shell

什么是shell

在计算机科学中,Shell俗称壳,用来区别于Kernel(核),是指“提供使用者使用界面”的软件(命令解析器)。 它类似于DOS下的command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。

图形界面shell

图形界面shell:通过提供友好的可视化界面,调用相应应用程序; 比如windows系列操作系统,Linux系统上的图形化应用程序GNOME、KDE等。

命令行shell

通过键盘输入特定命令的方式,调用相应的应用程序; 如windows系统的cmd.exe、Windows PowerShell, Linux系统的Bourne shell (sh)、Bourne Again shell (bash)等。

bash


bash是shell的一种,Linux系统中各个shell的功能都差不多, 目前大多数版本的Linux都默认使用bash 。

bash命令格式:

命令 [-options || –options][参数],如:tar -zxvf dome.tar.gz

选项备注:

-后面跟着的是单词的简写形式;–后面跟着的是单词的全面。

自动补全功能:

按tab键会自动尝试补全命令,连按两次会将所有匹配的内容显式出来。

常见命令:

  • pwd(Print Working Directory) 查看当前目录

  • cd(Change Directory) 切换目录,如 cd/etc

    cd 进入目录可以不用加 ./
    $ cd .. 回到上一级

  • ls(List) 查看当前目录下内容,如 ls -al

    -a 可以显示隐藏文件
    -l 显示文件的详细信息
    ls 在 dos 下为 dir
    //不用跳转到对应的目录也可以查看
    $ ls dirname

  • mkdir(Make Directory) 创建目录

    //批量创建目录
    $ mkdir 目录1 目录2 目录3

  • touch 创建文件

  • cat(Concatenate and print files) 在监控器上查看文件全部内容

  • less 按页查看文件

  • rm(Remove) 删除文件或文件夹,如 rm index.html、rm -rf dir

    彻底删除,不会进回收站
    加上 -r 后可以删除目录

  • mv(Move) 移动文件或重命名,如 mv index.html ./dome/index.html

    新文件名可选,mv 文件名 目录/新文件名

  • cp(Copy) 复制文件,如 mv index.html ./dome/index.html

    $ cp 文件名 目录名
    默认不能复制目录,需要的话要加上-r

  • >和>>重定向,如 echo hellow world! > index.text,> 覆盖,>> 追加。

    echo ‘’ >> a.txt
    文件不存在时会自动创建

  • clear 清除

vi 编辑器


如同Windows下的记事本,vi编辑器是Linux下的标配,通过它我们可以创建、编辑文件。 它是一个随系统一起安装的文本编辑软件。

三种模式

vi 辑器提供了3种模式,分别是命令模式、输入模式、末行模式, 每种模式下用户所能进行的操作是不一样的。

命令模式 ==> 执行命令

默认模式,在该模式中,可以输入命令来执行许多功能。在其它两种模式下可通过esc切换至该模式。

输入模式 ==> 输入文本

在该模式中,可以进行文本输入与编辑。在命令模式中输入i、a、o切换至该模式。

末行模式 ==> 执行待定命令

该模式类似命令模式,有些特殊命令需要在该模式下运行,比如文件的保存与退出。可视化命令(就是指令可以看到,比如wq保存退出,代替了命令行模式时不可见的ZZ)。在命令模式中输入冒号切换至该模式。

三种模式切换示意图

vi三模式切换
通过上图可以发现,输入模式是不能直接切换到末行模式的,必须要先切回到命令模式(按ESC键)。

常见命令

命令模式:

  • ZZ:保存并退出
  • u:撤销操作,可多次使用
  • x:删除
  • dd:删除当前行
  • yy:复制当前行
  • p:粘贴内容
  • ctrl+f:向前翻页
  • ctrl+b:向后翻页
  • i:进入编辑模式,当前光标处插入
  • I:进入编辑模式,光标移动到行首
  • a:进入编辑模式,当前光标后插入
  • A:进入编辑模式,光标移动到行尾
  • o:进入编辑模式,当前行下面插入新行
  • O:进入编辑模式,当前行上面插入新行
  • .:重复执行命令

末行模式:

  • w [filename]:保存或另存为
  • q:退出
  • wq:保存并退出
  • e!:撤销更改,返回到上一次保存的状态
  • q!:不保存强制退出
  • set nu:设置行号
本文结束,感谢您的阅读